package com.hui.platform.falseworkapi.service.base.oss.service;

import com.hui.platform.falseworkapi.service.base.oss.dto.FileInfo;
import com.hui.platform.falseworkapi.service.base.oss.dto.OssCallbackResult;
import com.hui.platform.falseworkapi.service.base.oss.constant.OssDirEnum;
import com.hui.platform.falseworkapi.service.base.oss.dto.OssPolicyResult;

import javax.servlet.http.HttpServletRequest;
import java.io.InputStream;


/**
 * oss上传管理Service
 * @author hui
 *
 */
public interface OssService {
	/**
	 *	生成OSS签名，前端可以进行签名上传
	 * @return
	 */
    OssPolicyResult policy();
    
    /**
     * 	服务器回调结果
     * @param request
     * @return
     */
    OssCallbackResult callback(HttpServletRequest request);
    
    
    //-----------------------------
    /**
     * 	上传文件
     */
    String uploadFile(String fileName, InputStream in, OssDirEnum dirType);
    
    /**
     * 	删除文件
     */
    boolean deleteFile(String url);
    
    
    /**
     * 	获取文件信息
     */
    FileInfo getFileInfo(String url);

}
